home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 July / CMCD0704.ISO / Software / Shareware / Utilitare / Girder / girder331c.exe / {app} / help / luavolume.GML < prev    next >
Extensible Markup Language  |  2004-01-11  |  19KB  |  365 lines

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <Girder><Group Name="Lua Volume Library Examples" Identifier="41" Enabled="TRUE"><Command Name="Start Events for sound card no 1" Identifier="42" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAA
  3. AAQAAABlcnIAGAAAAFJlZ2lzdGVyRm9yVm9sdW1lRXZlbnRzAAYAAABwcmludAA0AAAAQW4gZXJy
  4. b3Igb2NjdXJkIHdoaWxlIHRyeWluZyB0byBzdGFydCB2b2x1bWUgZXZlbnRzABYAAABWb2x1bWUg
  5. ZXZlbnRzIGVuYWJsZWQAAAAAAAAAAAAPAAAATAAAAMb//39CAAAAEwAAAAwAAADG//9/5QAAgIwA
  6. AADHAAAAAgAAAKoAAICMAAAABwEAAAIAAAAAAAAA</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>err=RegisterForVolumeEvents(0);
  7. if err < 0 then
  8.  
  9.   print ("An error occurd while trying to start volume events")
  10.  
  11. else
  12.  
  13.   print("Volume events enabled")
  14.  
  15. end
  16.  
  17. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Stop Events for sound card no 1" Identifier="43" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAA
  18. AAQAAABlcnIAGgAAAFVucmVnaXN0ZXJGb3JWb2x1bWVFdmVudHMABgAAAHByaW50ADMAAABBbiBl
  19. cnJvciBvY2N1cmQgd2hpbGUgdHJ5aW5nIHRvIHN0b3Agdm9sdW1lIGV2ZW50cwAXAAAAVm9sdW1l
  20. IGV2ZW50cyBkaXNhYmxlZAAAAAAAAAAAAA8AAABMAAAAxv//f0IAAAATAAAADAAAAMb//3/lAACA
  21. jAAAAMcAAAACAAAAqgAAgIwAAAAHAQAAAgAAAAAAAAA=</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>err=UnregisterForVolumeEvents(0);
  22. if err < 0 then
  23.  
  24.   print ("An error occurd while trying to stop volume events")
  25.  
  26. else
  27.  
  28.   print("Volume events disabled")
  29.  
  30. end
  31.  
  32. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Display Wave Volume" Identifier="44" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><OSD>TRUE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>2</ActionType><ActionSubType>16</ActionSubType><iValue1>100</iValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3><EventString Name="EventString" Identifier="45" Enabled="TRUE" Invert="FALSE" Device="144" IrStr="0:0:0:0"></EventString><EventString Name="EventString" Identifier="46" Enabled="TRUE" Invert="FALSE"></EventString></Command><Command Name="Example 1 (Name of first sound card)" Identifier="47" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAAAgAAAAAAAAAAAAAABgAA
  33. AAUAAABuYW1lAAQAAABlcnIADgAAAEdldERldmljZU5hbWUABgAAAHByaW50AC0AAABBbiBFcnJv
  34. ciBvY2N1cmQgd2hpbGUgb3BlbmluZyB0aGUgc291bmQgY2FyZAAUAAAAQ2xvc2VWb2x1bWVDb250
  35. cm9scwAAAAAAAAAAABMAAACMAAAAxv//f4IAAABTAAAAEwAAAEwAAADG//9/5QAAgMwAAAAHAQAA
  36. AgAAAGoBAIDMAAAADAAAAAIAAABMAQAAxv//fwIAAAAAAAAA</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>name, err = GetDeviceName(0)
  37.  
  38. if ( err<0 ) then
  39.  
  40.   print("An Error occurd while opening the sound card")
  41.  
  42. else
  43.  
  44.  
  45.   print(name)
  46.  
  47.   CloseVolumeControls(0) -- optional not advised if you are using the mixer a lot.
  48.  
  49. end
  50. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Example 2 (enumerating all sound cards)" Identifier="48" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAACAAAAAAAAAAAAAAACgAA
  51. AAcAAABEZXZDbnQADwAAAEdldERldmljZUNvdW50AAIAAABuAAQAAABlcnIADgAAAEdldERldmlj
  52. ZU5hbWUABgAAAHByaW50ABsAAABFcnJvciBhY2Nlc2luZyBzb3VuZCBjYXJkOgAGAAAAQ2FyZCAA
  53. DAAAACBoYXMgbmFtZTogABQAAABDbG9zZVZvbHVtZUNvbnRyb2xzAAAAAAAAAAAAIgAAAEwAAABC
  54. AAAAEwAAAMb//38MAAAAmP//fwYAAIAsBgCADAEAAAsAAACCgAEA0wAAAJMAAADMAAAAxv//f2UB
  55. AIBMAQAAhwEAAAsAAACdAAAAAoABAGoCAIBMAQAAxwEAAAsAAAAHAgAAjAAAAB0BAAACgAEATAIA
  56. AAsAAAACgAEArfn/fwAAAAA=</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>
  57. DevCnt = GetDeviceCount()
  58.  
  59. for i=0, DevCnt-1 do
  60.  
  61.   n, err = GetDeviceName(i)
  62.  
  63.   if ( err < 0 ) then
  64.   
  65.     print ("Error accesing sound card:"..i)
  66.   
  67.   else
  68.  
  69.  
  70.     print ("Card "..i.." has name: "..n)
  71.   
  72.     CloseVolumeControls(i)
  73.     
  74.   end
  75.  
  76.  
  77. end
  78. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Example 3 (enumerating all destinations)" Identifier="49" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAABgAAAAAAAAAAAAAACQAA
  79. AAgAAABEZXN0Q250ABQAAABHZXREZXN0aW5hdGlvbkNvdW50AAYAAABwcmludAAcAAAARXJyb3Ig
  80. YWNjZXNzaW5nIHNvdW5kIGNhcmQ6AAIAAABpAAUAAABuYW1lAAQAAABlcnIAEwAAAEdldERlc3Rp
  81. bmF0aW9uTmFtZQAUAAAAQ2xvc2VWb2x1bWVDb250cm9scwAAAAAAAAAAACAAAABMAAAAxv//f0IA
  82. AAATAAAADAAAAMb//39lAQCAjAAAAMcAAAAMAQAAnQAAAAIAAABqBACAxv//fwwAAACY//9/BgAA
  83. gGwCAIDMAQAAxv//fwsAAACCgAEAkwEAAFMBAACMAAAATAEAAAKAAQBt/f9/DAIAAMb//38CAAAA
  84. AAAAAA==</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>
  85. DestCnt = GetDestinationCount(0)
  86.  
  87. if ( DestCnt <0 ) then
  88.  
  89.     print ("Error accessing sound card:"..i)
  90.  
  91. else
  92.  
  93.  
  94.   for i=0,DestCnt-1 do
  95.  
  96.     name, err = GetDestinationName(0, i)
  97.     
  98.     print (name);
  99.   
  100.   
  101.   end;
  102.   
  103.   CloseVolumeControls(0)
  104.  
  105. end;
  106.  
  107.  
  108.  
  109.  
  110. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Example 4 (enumerating all sources of all destinations)" Identifier="50" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAACgAAAAAAAAAAAAAADAAA
  111. AAgAAABEZXN0Q250ABQAAABHZXREZXN0aW5hdGlvbkNvdW50AAYAAABwcmludAAcAAAARXJyb3Ig
  112. YWNjZXNzaW5nIHNvdW5kIGNhcmQ6AAIAAABpAAUAAABuYW1lABMAAABHZXREZXN0aW5hdGlvbk5h
  113. bWUABwAAAFNyY0NudAAPAAAAR2V0U291cmNlQ291bnQADgAAAEdldFNvdXJjZU5hbWUAAwAAACAg
  114. ABQAAABDbG9zZVZvbHVtZUNvbnRyb2xzAAAAAAAAAAAANQAAAEwAAADG//9/QgAAABMAAAAMAAAA
  115. xv//f2UBAICMAAAAxwAAAAwBAACdAAAAAgAAAKoJAIDG//9/DAAAAJj//38GAACArAcAgIwBAADG
  116. //9/CwAAAEKAAQBTAQAAjAAAAEwBAAACgAEADAIAAMb//38LAAAAQoABANMBAACG//9/zAEAAJj/
  117. /38GAACA7AIAgEwCAADG//9/CwAAAMsAAABCAAMAUwEAAIwAAACHAgAATAEAAJ0AAAACAAMA7fz/
  118. fy34/3/MAgAAxv//fwIAAAAAAAAA</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>
  119. DestCnt = GetDestinationCount(0)
  120.  
  121. if ( DestCnt <0 ) then
  122.  
  123.     print ("Error accessing sound card:"..i)
  124.  
  125. else
  126.  
  127.  
  128.   
  129.   for i=0,DestCnt-1 do
  130.  
  131.     name = GetDestinationName(0, i)
  132.     print (name)
  133.     
  134.     -- request sourcecount of the current destination (i)
  135.     SrcCnt = GetSourceCount(0, i)
  136.     
  137.     -- start at -1 to include the master channel as well
  138.     for j=-1, SrcCnt-1 do
  139.     
  140.       -- now we are accessing the name of the source, this needs
  141.       -- two indices i and j.
  142.       name = GetSourceName(0, i,j)
  143.       print ("  "..name) -- indented for clarity
  144.     
  145.     
  146.     end
  147.   
  148.   
  149.   end
  150.   
  151.   CloseVolumeControls(0)
  152.  
  153. end
  154.  
  155.  
  156.  
  157.  
  158. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Example 5 (enumerating all controls of all sources of all destinations)" Identifier="51" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAADgAAAAAAAAAAAAAAEAAA
  159. AAgAAABEZXN0Q250ABQAAABHZXREZXN0aW5hdGlvbkNvdW50AAYAAABwcmludAAaAAAARXJyb3Ig
  160. b3BlbmluZyBzb3VuZCBjYXJkOgACAAAAaQAFAAAAbmFtZQATAAAAR2V0RGVzdGluYXRpb25OYW1l
  161. AAcAAABTcmNDbnQADwAAAEdldFNvdXJjZUNvdW50AA4AAABHZXRTb3VyY2VOYW1lAAMAAAAgIAAI
  162. AAAAQ3RybENudAAQAAAAR2V0Q29udHJvbENvdW50AA8AAABHZXRDb250cm9sTmFtZQAFAAAAICAg
  163. IAAUAAAAQ2xvc2VWb2x1bWVDb250cm9scwAAAAAAAAAAAE0AAABMAAAAxv//f0IAAAATAAAADAAA
  164. AMb//39lAQCAjAAAAMcAAAAMAQAAnQAAAAIAAACqDwCAxv//fwwAAACY//9/BgAAgKwNAICMAQAA
  165. xv//fwsAAABCgAEAUwEAAIwAAABMAQAAAoABAAwCAADG//9/CwAAAEKAAQDTAQAAhv//f8wBAACY
  166. //9/BgAAgOwIAIBMAgAAxv//fwsAAADLAAAAQgADAFMBAACMAAAAhwIAAEwBAACdAAAAAgADAAwD
  167. AADG//9/CwAAAMsAAABCAAMA0wIAAMb//3/MAgAAmP//fwYAAIAsAwCATAMAAMb//38LAAAAywAA
  168. AIsBAABCgAQAUwEAAIwAAACHAwAATAEAAJ0AAAACgAQArfz/f+32/38t8v9/zAMAAMb//38CAAAA
  169. AAAAAA==</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>
  170. DestCnt = GetDestinationCount(0)
  171.  
  172. if ( DestCnt <0 ) then
  173.  
  174.     print ("Error opening sound card:"..i)
  175.  
  176. else
  177.  
  178.  
  179.   
  180.   for i=0,DestCnt-1 do
  181.  
  182.     name = GetDestinationName(0, i)
  183.     print (name)
  184.     
  185.     -- request sourcecount of the current destination (i)
  186.     SrcCnt = GetSourceCount(0, i)
  187.     
  188.     -- start at -1 to include the master channel as well
  189.     for j=-1, SrcCnt-1 do
  190.     
  191.       -- now we are accessing the name of the source, this needs
  192.       -- two indices i and j.
  193.       name = GetSourceName(0, i,j)
  194.       print ("  "..name) -- indented for clarity
  195.     
  196.       -- get the number of controls on the current source
  197.       CtrlCnt = GetControlCount(0, i,j)
  198.       for k=0, CtrlCnt-1 do
  199.       
  200.         name = GetControlName(0,i,j,k)
  201.         print("    "..name)
  202.       
  203.       end
  204.     
  205.     
  206.     end
  207.   
  208.   
  209.   end
  210.   
  211.   CloseVolumeControls(0)
  212.  
  213. end
  214.  
  215.  
  216.  
  217.  
  218. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Example 6 (Setting wave volume to 50%)" Identifier="52" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAACAAAAAAAAAAAAAAADAAA
  219. AAUAAABEZXN0AAcAAABTb3VyY2UACAAAAENvbnRyb2wABAAAAG1pbgAEAAAAbWF4AAUAAAB0eXBl
  220. ABEAAABHZXRDb250cm9sQm91bmRzAAYAAABwcmludAAvAAAAQW4gRXJyb3IgT2NjdXJkIHdoaWxl
  221. IGFjY2Vzc2luZyB0aGUgc291bmQgY2FyZAAEAAAAdmFsABAAAABTZXRDaGFubmVsVmFsdWUAFAAA
  222. AENsb3NlVm9sdW1lQ29udHJvbHMAAAAAAAAAAAArAAAAxv//fxMAAADG//9/UwAAAMb//3+TAAAA
  223. jAEAAMb//38MAAAATAAAAIwAAADCAAAAUwEAABMBAADTAAAATAEAAMb//3/lAACAzAEAAAcCAAAC
  224. AAAA6gQAgAwBAADMAAAAGQAAAEYAAIAbAAAAzAAAABcAAABTAgAAjAIAAMb//38MAAAATAAAAIwA
  225. AACG//9/xv//f0wCAAACAAAAzAIAAMb//38CAAAAAAAAAA==</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>
  226. Dest=0
  227. Source=0
  228. Control=0
  229.  
  230. min , max, type = GetControlBounds(0, Dest, Source, Control)
  231.   
  232. if (  type < 0 ) then
  233.  
  234.   print("An Error Occurd while accessing the sound card")
  235.  
  236. else
  237.   
  238.   -- type is type of control
  239.   -- < 0 = error
  240.   -- 1 = boolean
  241.   -- 2 = unused
  242.   -- 3 = number
  243.   -- 4 = number
  244.   
  245.   val = (max - min)/2 + min;
  246.  
  247.   -- the -1 indicates that we want to set all channels at the same time
  248.   -- the 0 is the Item (unused parameter)
  249.   SetChannelValue(0, Dest,Source,Control,-1,0,val)
  250.  
  251.   CloseVolumeControls(0)
  252.  
  253. end
  254.  
  255.  
  256.  
  257. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Example 7 (Decreasing the wave volume by 50%)" Identifier="53" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAACAAAAAAAAAAAAAAADQAA
  258. AAUAAABEZXN0AAcAAABTb3VyY2UACAAAAENvbnRyb2wABAAAAG1pbgAEAAAAbWF4AAUAAAB0eXBl
  259. ABEAAABHZXRDb250cm9sQm91bmRzAAYAAABwcmludAAvAAAAQW4gRXJyb3IgT2NjdXJkIHdoaWxl
  260. IGFjY2Vzc2luZyB0aGUgc291bmQgY2FyZAAEAAAAdmFsABAAAABHZXRDaGFubmVsVmFsdWUAEAAA
  261. AFNldENoYW5uZWxWYWx1ZQAUAAAAQ2xvc2VWb2x1bWVDb250cm9scwAAAAAAAAAAADUAAADG//9/
  262. EwAAAMb//39TAAAAxv//f5MAAACMAQAAxv//fwwAAABMAAAAjAAAAMIAAABTAQAAEwEAANMAAABM
  263. AQAAxv//f+UAAIDMAQAABwIAAAIAAABqBwCAjAIAAMb//38MAAAATAAAAIwAAACG//9/xv//f0IA
  264. AABTAgAATAIAAEYAAIAbAAAAUwIAAEwCAADMAAAAZQAAgMwAAABTAgAAzAIAAMb//38MAAAATAAA
  265. AIwAAACG//9/xv//f0wCAAACAAAADAMAAMb//38CAAAAAAAAAA==</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>
  266. Dest=0
  267. Source=0
  268. Control=0
  269.  
  270. min , max, type = GetControlBounds(0, Dest, Source, Control)
  271.  
  272. if ( type < 0 ) then
  273.  
  274.   print("An Error Occurd while accessing the sound card")
  275.  
  276. else
  277.   -- type is type of control
  278.   -- 1 = boolean
  279.   -- 2 = unused
  280.   -- 3 = number
  281.   -- 4 = number
  282.  
  283.   val = GetChannelValue(0, Dest, Source, Control, -1,0)
  284.   
  285.   val = val / 2;
  286.   
  287.   if ( val < min ) then
  288.     val = min
  289.   end
  290.  
  291.   -- the -1 indicates that we want to set all channels at the same time
  292.   -- the 0 is the Item (unused parameter)
  293.   SetChannelValue(0, Dest,Source,Control,-1,0,val)
  294.  
  295.   CloseVolumeControls(0)
  296.  
  297. end
  298.  
  299.  
  300.  
  301. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3></Command><Command Name="Payload Text" Identifier="54" Enabled="FALSE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>9</ActionSubType><sValue1>Device: [pld1]
  302. Destination: [pld2]
  303. Source: [pld3]
  304. Control: [pld4]
  305. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3><EventString Name="EventString" Identifier="55" Enabled="TRUE" Invert="FALSE" Device="-2" IrStr="On Lua-Volume Library Event"></EventString></Command></Group><Group Name="Event Switch Example" Identifier="56" Enabled="TRUE"><Command Name="Volume Event Switch call" Identifier="57" Enabled="FALSE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAABgAAAAAAAAAAAAAABQAA
  306. AAgAAABicmFuY2gyAAUAAABwbGQxAAUAAABwbGQyAAUAAABwbGQzAAUAAABwbGQ0AAAAAAAAAAAA
  307. DwAAAAwAAABMAAAABgAAgBoAAACMAAAABgAAgBoAAADMAAAABgAAgBoAAAAMAQAABgAAgBoAAAAC
  308. AAAAAAAAAA==</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>
  309.  
  310. branch2(pld1*1,pld2*1,pld3*1,pld4*1)
  311. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3><EventString Name="EventString" Identifier="58" Enabled="TRUE" Invert="FALSE" Device="-2" IrStr="On Lua-Volume Library Event"></EventString></Command><Command Name="Main Lua Code (this mutes the wave channel on an incoming master channel event)" Identifier="59" Enabled="TRUE"><StateCount>1</StateCount><StateBegin>1</StateBegin><StateCurrent>1</StateCurrent><StateInvert>FALSE</StateInvert><Binary Encoding="Base64">G0x1YUABBAQEIAYJCBLmW6GwubJBCAAAAD0obm9uZSkAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAA
  312. AAsAAABNdXRlVG9nZ2xlAAgAAABicmFuY2gyAAAAAAACAAAACAAAAD0obm9uZSkAAQAAAAEAAAAA
  313. CQAAAAAAAAAAAAAABgAAAAIAAAB4AAQAAABlcnIAEAAAAEdldENoYW5uZWxWYWx1ZQAGAAAAcHJp
  314. bnQAGwAAAEVycm9yIGFjY2Vzc2luZyBzb3VuZCBjYXJkABAAAABTZXRDaGFubmVsVmFsdWUAAAAA
  315. AAAAAAAjAAAAjAAAAMb//3/G//9/CwAAAAYAAIDG//9/xv//f4KAAABTAAAAEwAAAEwAAADG//9/
  316. 5QAAgMwAAAAHAQAAAoAAAEEAAAAMAAAABgAAgKAAAIDG//9/EwAAAGoAAIAGAACAEwAAAEwBAADG
  317. //9/xv//fwsAAAAGAACAhv//f8b//38MAAAAAoAAAAAAAAAIAAAAPShub25lKQAYAAAABAAAAAAG
  318. AAAAAAAAAAAAAAABAAAACwAAAE11dGVUb2dnbGUAAAAAAAAAAAAOAAAACwAAAMb//39gAgCASwAA
  319. AMb//3+gAQCAiwAAAIb//3/gAACADAAAAMb//38CAAIAAQEAAAAAAAAFAAAAMAAAABMAAAAwgAAA
  320. UwAAAAAAAAA=</Binary><OSD>FALSE</OSD><Submatch>FALSE</Submatch><Topmost>TRUE</Topmost><OneMatch>FALSE</OneMatch><UseVar>FALSE</UseVar><MatchHidden>FALSE</MatchHidden><MatchNum>1</MatchNum><ActionType>4</ActionType><ActionSubType>34</ActionSubType><sValue1>function MuteToggle(Source)
  321.  
  322.   x,err = GetChannelValue(0,0,Source,1,0,0)
  323.   
  324.   if ( err < 0 ) then
  325.      print("Error accessing sound card")
  326.      return
  327.   end
  328.   
  329.   if ( x==1 ) then
  330.     x = 0
  331.   else
  332.     x = 1
  333.   end
  334.   
  335.   SetChannelValue(0,0,Source,1,-1,0,x)
  336.   
  337.   
  338.  
  339. end
  340.  
  341.  
  342. -- branch depending on what device is generating events
  343. function branch2(device, destination, source, object)
  344.  
  345.   if ( device == 0 ) then
  346.  
  347.     if ( destination == 0 ) then
  348.  
  349.       if ( source == -1 ) then
  350.  
  351.         -- the master channel
  352.         --
  353.         MuteToggle(0)
  354.         return
  355.       end
  356.  
  357.     end
  358.  
  359.   end
  360.  
  361.  
  362. end
  363.  
  364.  
  365. </sValue1><bValue1>FALSE</bValue1><bValue2>FALSE</bValue2><bValue3>FALSE</bValue3><EventString Name="EventString" Identifier="60" Enabled="TRUE" Invert="FALSE" Device="18" IrStr="GirderOpen"></EventString><EventString Name="EventString" Identifier="61" Enabled="TRUE" Invert="FALSE" Device="18" IrStr="AfterScriptReset"></EventString></Command></Group></Girder>